home *** CD-ROM | disk | FTP | other *** search
/ Computer Active Guide 2009 September / CAG09.ISO / Programos / systemtweaker.exe / {app} / library.dat / library / logger.pyo (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-11-12  |  3.4 KB  |  94 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.6)
  3.  
  4. import sys
  5. import logging
  6. import logging.handlers as logging
  7. import traceback
  8. import platform
  9. if platform.system() == 'Windows':
  10.     from win32api import OutputDebugString
  11.  
  12. ROOT_LOGGER = logging.getLogger()
  13. _MiB = 1048576
  14.  
  15. def _encode(s):
  16.     enc = sys.getfilesystemencoding()
  17.     if isinstance(s, unicode):
  18.         return s.encode(enc)
  19.     return s
  20.  
  21.  
  22. class NullHandler(logging.Handler):
  23.     
  24.     def emit(self, record):
  25.         pass
  26.  
  27.  
  28.  
  29. class TracelogHandler(logging.Handler):
  30.     
  31.     def emit(self, record):
  32.         OutputDebugString(self.format(record))
  33.  
  34.  
  35.  
  36. class CurrentStdErrHandler(logging.StreamHandler):
  37.     __init__ = logging.Handler.__init__
  38.     
  39.     def stream(self):
  40.         return sys.stderr
  41.  
  42.     stream = property(stream)
  43.  
  44.  
  45. def maybe_set_level(level):
  46.     if level < ROOT_LOGGER.level:
  47.         ROOT_LOGGER.setLevel(level)
  48.     
  49.  
  50.  
  51. def setup_empty():
  52.     ROOT_LOGGER.addHandler(NullHandler())
  53.  
  54.  
  55. def setup_rotating(file_name, level = logging.DEBUG, size_MiB = 10):
  56.     maybe_set_level(level)
  57.     formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
  58.     handler = logging.handlers.RotatingFileHandler(file_name, maxBytes = int(size_MiB * _MiB), backupCount = 10)
  59.     handler.setFormatter(formatter)
  60.     handler.setLevel(level)
  61.     ROOT_LOGGER.addHandler(handler)
  62.  
  63.  
  64. def setup_ubapp_standard(file_name, level = logging.INFO):
  65.     maybe_set_level(level)
  66.     logging.logMultiprocessing = 0
  67.     formatter = logging.Formatter('%(asctime)s %(levelname)s - %(funcName)s - %(message)s')
  68.     file_handler = logging.FileHandler(file_name)
  69.     file_handler.setFormatter(formatter)
  70.     file_handler.setLevel(level)
  71.     ROOT_LOGGER.addHandler(file_handler)
  72.     console_handler = CurrentStdErrHandler()
  73.     console_handler.setFormatter(formatter)
  74.     console_handler.setLevel(level)
  75.     ROOT_LOGGER.addHandler(console_handler)
  76.     if platform.system() == 'Windows':
  77.         tracelog_handler = TracelogHandler()
  78.         tracelog_handler.setLevel(level)
  79.         ROOT_LOGGER.addHandler(tracelog_handler)
  80.     
  81.  
  82.  
  83. def write_traceback(reg_check, message = None):
  84.     if message:
  85.         logging.error(message)
  86.     
  87.     
  88.     try:
  89.         logging.debug('%s\n', traceback.format_exc())
  90.     except Exception:
  91.         pass
  92.  
  93.  
  94.